using System;
using System.Windows.Forms;



namespace CStock
{
	public enum ViewsAvailable
	{
		dataGridView,
		dataView,
		prognosisView,
		tradeView,
		chartView,
        intradayView
	}

	public interface IMainClass : IViewMenus
	{
        void AddAssetToCustomPortfolio(string portfName);
		TabPage SelectTabPage(string tabPageName);

		IProgramContext ProgramContext{get;set;}
		IView View{get;set;}

		ITreeViewStock TreeViewStock{get;set;}
        ITreeViewStock TreeViewCustomPortfolios { get; set; }
		PropertyGrid PropertyGrid{get;set;}
        IListViewShareData ListViewShareData{get;set;}
        IListViewIntraday ListViewIntraday{get;set;}
        ITradeControl TradeControl { get; set; }
        ITabControlStock TabControlStock { get; set; }

        IGrid GridDataView { get; set; }
        IGridIntraday GridIntraday { get; set; }
        IGrid GridStockData { get; set; }
		IGrid GridTrade{get;set;}
        IGridFundamentalData GridFundamentalData { get; set; }
        


		#region methods


        bool DoMenuShowQuotes_Window();
        bool UpdateViewCurrentPath();
        bool CustomPortfolioTreeViewActive { get; set; }
        IPortfolios Portfolios_Custom();
        IPortfolios Portfolios_StockMarket();
      
		void Print();
		void RefreshTree();
        ITradeSystem DoTradeSystemBuySellSystemChange();
		ITradeSystem DoTradeSystemBuySell();

		void SetView(string tabPageName);
		void RefreshIntradayChart(IDataClass dc);

		#endregion
        


	}
}

